#pragma once

#include "AdaptationMap.h"
#include "AdaptationType.h"
#include "../Core/Singleton.h"

enum AirwayDirections
{
	AirwayDirection_Both,
	AirwayDirection_Previous,
	AirwayDirection_Next
};

class Airway : public AdaptationType
{
public:
	std::string Name;
	std::list<std::string> Fixes;
	AirwayDirections Direction;

	void ParseDictionary(Dictionary p_Dictionary);
	std::string Key();
	void Print();
	std::list<std::string> GetFixesByEdge(std::string p_Start, std::string p_End);
};

class AirwayMap : public AdaptationMap<Airway>, public Singleton<AirwayMap>
{
	friend class Singleton<AirwayMap>;

private:
	AirwayMap();
};
